/*
 * @Date: 2022-02-11 16:25:16
 * @LastEditors: tich425
 * @LastEditTime: 2022-02-12 17:33:53
 * @FilePath: \TodoList\api\user.go
 * @Description: user 管理
 */
package api

import (
	"todo-list/model"
	"todo-list/res"
	"todo-list/service"

	"github.com/gin-gonic/gin"
)

/**
 * @description: 邮箱验证
 * @param {*gin.Context} c
 */
func SendEmailCode(c *gin.Context) {

	var e model.Email

	// 读取数据
	if err := c.ShouldBind(&e); err != nil {
		res.FailWithDetailed(res.ParamErr, err.Error(), "提交信息非法", c)
		return
	}

	service.SendEmailCode(e.Email, c)
}

/**
 * @description: 用户注册接口
 * @param {*gin.Context} c
 */
func Regist(c *gin.Context) {
	// 创建结构体实例
	var r model.Regist
	// 获取前端数据
	if err := c.ShouldBindJSON(&r); err != nil {
		res.FailWithDetailed(res.ParamErr, err.Error(), "提交信息非法", c)
		return
	}

	service.Regist(r, c)
}

/**
 * @description: 用户登录接口
 * @param {*gin.Context} c
 */
func Login(c *gin.Context) {
	// 创建结构体实例
	var l model.Login
	// 获取前端数据
	if err := c.ShouldBindJSON(&l); err != nil {
		res.FailWithDetailed(res.ParamErr, err.Error(), "提交信息非法", c)
		return
	}

	service.Login(l, c)
}

/**
 * @description: 上传用户头像
 * @param {*gin.Context} c
 */
// func UploadImg(c *gin.Context) {
// 	// 获取前端传来的信息
// 	f, err := c.FormFile("imgfile")
// 	if err != nil {
// 		res.FailWithDetailed(res.ParamErr, err.Error(), "上传失败", c)
// 		return
// 	}

// 	// 获取用户信息
// 	uid, _ := c.Get("UserID")

// 	// user 处理
// 	service.UploadImg(uid.(uint), f, c)
// }
